﻿<Window x:Class="NMetronomeWPF.WPFAboutBox1"
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	Title="{Binding RelativeSource={RelativeSource Self}, Mode=OneTime, Path=ProductTitle}" 
	x:Uid="idAboutBox"
	Style="{DynamicResource AboutDialogStyle}" WindowStartupLocation="CenterOwner" Loaded="Window_Loaded">
	<Window.Resources>
		<XmlDataProvider x:Key="aboutProvider" XPath="ApplicationInfo" IsAsynchronous="False" IsInitialLoadEnabled="True">
			<x:XData>
				<ApplicationInfo xmlns="">
					<Link Uri="http://humergu.codeplex.com">Codeplex Project Site</Link>
				</ApplicationInfo>
			</x:XData>
		</XmlDataProvider>


		<Image x:Key="aboutLogo" Source="AboutLogo.png" />
		<Style x:Key="AboutDialogStyle" TargetType="Window">
			<Setter Property="Height" Value="Auto" />
			<Setter Property="Width" Value="500" />
			<Setter Property="ShowInTaskbar" Value="False" />
			<Setter Property="ResizeMode" Value="NoResize" />
			<Setter Property="WindowStyle" Value="SingleBorderWindow" />
			<Setter Property="SizeToContent" Value="Height" />
		</Style>
		<Style x:Key="DisplayAreaStyle" TargetType="{x:Type StackPanel}">
			<Setter Property="Margin" Value="10,10,10,5" />
		</Style>
		<Style x:Key="BackgroundStyle" TargetType="{x:Type StackPanel}">
			<Setter Property="Background">
				<Setter.Value>
					<LinearGradientBrush EndPoint="0,1">
						<GradientStop Offset="0" Color="LightBlue" />
						<GradientStop Offset="0.55" Color="White" />
						<GradientStop Offset="0.85" Color="White" />
						<GradientStop Offset="1" Color="LightBlue" />
					</LinearGradientBrush>
				</Setter.Value>
			</Setter>
		</Style>
		<Style TargetType="Label">
			<Setter Property="Padding" Value="0" />
		</Style>
		<Style x:Key="ParagraphSeparator" TargetType="{x:Type Label}">
			<Setter Property="Padding" Value="0,10,0,0" />
		</Style>
		<Style x:Key="LinkLabelStyle">
			<Setter Property="Control.Padding" Value="0" />
			<Setter Property="Control.VerticalAlignment" Value="Center" />
		</Style>
		<Style x:Key="ReadOnlyDescStyle" TargetType="{x:Type TextBox}">
			<Setter Property="MinLines" Value="6" />
			<Setter Property="MaxLines" Value="6" />
			<Setter Property="IsReadOnly" Value="True" />
			<Setter Property="TextWrapping" Value="WrapWithOverflow" />
			<Setter Property="VerticalScrollBarVisibility" Value="Visible" />
		</Style>
		<Style x:Key="OkButtonStyle" TargetType="{x:Type Button}">
			<Setter Property="MinWidth" Value="75" />
			<Setter Property="Margin" Value="0,5" />
			<Setter Property="DockPanel.Dock" Value="Right" />
			<Setter Property="IsDefault" Value="True" />
			<Setter Property="IsCancel" Value="True" />
		</Style>
	</Window.Resources>
	<StackPanel x:Uid="clientArea" Style="{StaticResource BackgroundStyle}">
		<StaticResource ResourceKey="aboutLogo" />
		<StackPanel x:Uid="displayArea" Style="{StaticResource DisplayAreaStyle}" 
					DataContext="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}, Mode=OneTime}">
			
			<Label x:Name="productName" x:Uid="productName" 
				   Content="{Binding Mode=OneTime, Path=Product}" />
			<Label x:Name="description" x:Uid="description" Content="{Binding Mode=OneTime, Path=Description}"/>


			<StackPanel x:Uid="versionArea" Orientation="Horizontal">
				<Label x:Name="versionLabel" x:Uid="VersionLabel" Content="Version - " />
				<Label x:Name="version" x:Uid="version" Content="{Binding Mode=OneTime, Path=Version}" />
			</StackPanel>
			<Label x:Name="copyright" x:Uid="copyright" Content="{Binding Mode=OneTime, Path=Copyright}"  />
			<Label x:Name="info" x:Uid="info" Style="{StaticResource ParagraphSeparator}" 
				   Content="License: " />
			
			<TextBox x:Name="license" x:Uid="license" Text="{Binding Mode=OneTime, Path=License}"
				Style="{StaticResource ReadOnlyDescStyle}" DataContext="{Binding}" Height="170" FontFamily="GlobalMonospace.CompositeFont" />
			
			<DockPanel x:Uid="buttonArea">
				<Button x:Name="okButton" x:Uid="okButton" Style="{StaticResource OkButtonStyle}" 
						Content="OK" />
				<Label x:Name="productLink" x:Uid="productLink" Style="{StaticResource LinkLabelStyle}" >
					<Hyperlink x:Name="hyperlink" x:Uid="hyperlink" NavigateUri="{Binding Mode=OneTime, Path=LinkUri}"  Style="{StaticResource LinkLabelStyle}"
							   Hyperlink.RequestNavigate="hyperlink_RequestNavigate">
						<TextBlock Text="{Binding Mode=OneTime, Path=LinkText}" />
					</Hyperlink>
				</Label>
			</DockPanel>
		</StackPanel>
	</StackPanel>
</Window>